﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using EventReminder.Common;

namespace EventReminder.Server
{
    class DefaultEventProcessor : AEventProcessor
    {
        // constructor

        // has no next link

        public override IEventProcessor NextLink
        {
            get { return null; }
            set { throw new NotSupportedException("The buck stops here!"); }
        }

        public DefaultEventProcessor()
            : base(EventTypes.Unknown)
        { }

        public override void AddEvent(EventData data)
        {
            ProcessAddEvent(data);
        }

        protected override void ProcessAddEvent(EventData data)
        {
            throw new NotImplementedException();
        }

        public override void ModifyEvent(EventData oldVersion, EventData newVersion)
        {
            ProcessModifyEvent(oldVersion, newVersion);
        }

        protected override void ProcessModifyEvent(EventData oldVersion, EventData newVersion)
        {
            throw new NotImplementedException();
        }

        public override void DeleteEvent(EventData data)
        {
            ProcessDeleteEvent(data);
        }

        protected override void ProcessDeleteEvent(EventData data)
        {
            throw new NotImplementedException();
        }
    }
}
